In recent, with rapid growth of performance of devices capable of storing and sharing contents and transport protocol technologies, content sharing in a distributed storage environment is drawing great attention. The distributed storage environment, which is contrary to a conventional centralized storage environment, stores contents to share to a plurality of devices capable of storing and sharing the contents, rather than storing all of contents to share to a centralized storage device such as media server.
In the distributed storage environment, the same content can exist in different devices. Herein, the content common in the different devices is referred to as multi-copies. In the distributed storage environment, there can be a plurality of transmission paths between a request device requesting the content sharing and a source device holding the content to share. In this example, depending on which source device provides the content to the request device, channel quality of the transmission path, hardware performance of a transmitter, the remaining power, a Central Processing Unit (CPU) usage, and the remaining memory capacity differ. Thus, as the data rate of the content varies according to which source device is selected, a method for selecting an optimal source device is needed.